Skip to content

Modernize .NET APM agent install testing for Linuxes#1388

Merged
pranav-new-relic merged 9 commits into
mainfrom
chore/update-dotnet-agent-test-definitions-linux
Jul 13, 2026
Merged

Modernize .NET APM agent install testing for Linuxes#1388
pranav-new-relic merged 9 commits into
mainfrom
chore/update-dotnet-agent-test-definitions-linux

Conversation

@nr-ahemsath

@nr-ahemsath nr-ahemsath commented Jul 1, 2026

Copy link
Copy Markdown
Member

Modernize .NET APM agent install testing on Linux

Adds end-to-end .NET agent install tests on current distros/runtimes — Amazon Linux 2023 & Ubuntu 24.04 running .NET 10 — while keeping the existing Ubuntu 20.04 / Amazon Linux 2 / .NET 5 definitions as an intentional old-to-new coverage matrix. All exercise the same apm/dotNet/linux-systemd recipe.

4 new definitions (US ubuntu24 + al2023, EU/JP ubuntu24) deploy self-contained and framework-dependent .NET 10 apps behind Apache and validate .NET Agent (installed). Existing defs are updated, not removed. All CI deploy jobs green.

Note: I created new .NET 10 sample app artifacts (self-contained + framework-dependent, entrypoint net10webapp, contents at archive root) and published them to an s3 bucket that I have write permissions to. For consistency, these should be moved to the same s3 bucket that is associated with this repo (open-install-library-artifacts.s3-us-west-2.amazonaws.com), but I will need help from whoever owns that resource to accomplish this.

Details

New test definitions (.NET 10, x86_64, Apache, full agent validation):

  • test/definitions/apm/dotNet/linux/ubuntu24-apache-aspnetcore.json (US)
  • test/definitions/apm/dotNet/linux/al2023-apache-aspnetcore.json (US)
  • test/definitions-eu/apm/dotNet/linux/ubuntu24-apache-aspnetcore.json (EU)
  • test/definitions-jp/apm/dotNet/linux/ubuntu24-apache-aspnetcore.json (JP)

New runtime-install roles:

  • dotNet/install/ubuntu24/ — aspnetcore-runtime-10.0 via the Microsoft apt feed.
  • dotNet/install/al2023/ — aspnetcore-runtime-10.0 via AL2023's native dnf repos. (Microsoft's rhel/9 feed is unusable on AL2023 — its meta-RPM requires system-release < 10.)

Deploy scripts made version-neutral + parameterized (apache/deploy-application/dotNet/{debian,rhel}):

  • Added dotnet_app_name (and rhel dotnet_exe) params with behavior-preserving defaults; new defs override them.
  • Renamed templates net5webapplication.{service,conf} → dotnetwebapplication.{service,conf}; dropped version-specific descriptions.

Recipe fix (recipes/newrelic/apm/dotNet/linux-systemd.yml): add_gnupg2_if_required now guards the apt-get path on yum presence, so it no longer errors on RPM/dnf distros like AL2023.

Existing definitions (kept, not retired):

  • EU/JP ubuntu20 resource IDs renamed to unique, per-region, ≤20-char names (ubuntu20-eu/-jp) to avoid cross-region security-group collisions.
  • Retained alongside the linux2-aspnetcore5 smoke test as older-distro/runtime coverage.

Misc: .gitignore ignores docs/superpowers/.

@pranav-new-relic

Copy link
Copy Markdown
Member

Merging this now to unblock the .NET Linux test-def modernization work — everything else in the PR (Ubuntu 24.04 + AL2023 defs, .NET 10 runtime, parameterized deploy scripts, add_gnupg2_if_required guard, ubuntu20 EU/JP resource-id rename) is clean and CI green.

Temporary caveat, tracked separately: the four new test defs currently point at https://test-repo-production.s3.us-west-2.amazonaws.com/install/dotnet/testapps/{selfcontained,frameworkdependent}-net10webapplication.zip — a personal S3 bucket, as you flagged in the PR description. We'll revisit and transfer those artifacts to the repo-owned open-install-library-artifacts.s3-us-west-2.amazonaws.com bucket in a follow-up. Until then, CI stays green because your bucket serves them; that's the load-bearing assumption we're accepting for now.

@pranav-new-relic pranav-new-relic left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. See top-level comment for the S3-bucket follow-up we're tracking separately.

@pranav-new-relic pranav-new-relic merged commit 0883727 into main Jul 13, 2026
26 checks passed
@pranav-new-relic pranav-new-relic deleted the chore/update-dotnet-agent-test-definitions-linux branch July 13, 2026 17:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants